NPM酷库,每天两分钟,了解一个流行NPM库。

昨天我们了解了增强版Promise库:q。q库实现了比ES2015标准更多的Promise方法,今天我们继续学习另一个功能强大的Promise工具库:bluebird。

bluebird

首先,和q库一样,bluebird也是一个增强版本的Promise库,可以直接require后替换Node.js内置Promise。

const Promise = require('bluebird');

Promise也提供了其他非常有用的工具,比如前天文章中将callback样式函数转换为Promise样式,可以直接使用bluebird实现:

const readFile = Promise.promisify(fs.readFile);

也可以直接将整个Node.js模块转换为Promise样式接口:

const fs = Promise.promisifyAll(require("fs"));

// ...

await fs.readFileAsync("myfile.js", "utf8");

此外经常用到的bluebird工具有:

参考资料

https://github.com/petkaanton...

http://bluebirdjs.com/docs/ap...


脉冲云_梁兴臣
616 声望194 粉丝

脉冲云CTO,JS全栈开发,DevOps实施,开发体验优化,开发效率提升